/*
一维前缀和：
    给定数组arr[n]，m次询问，每次求区间上各元素之和，如求[0,2]就是求arr[0]+arr[1]+arr[2]。
*/

#include <bits/stdc++.h>
using namespace std;
const int n = 1e3;
int sum[n];
#define get_sum(L, R) ((L) ? (sum[R] - sum[L - 1]) : (sum[R]))
int main()
{
    int arr[5] = {1, 3, 7, 5, 2};
    sum[0] = arr[0];
    for (int i = 1; i < 5; i++)
    {
        sum[i] = sum[i - 1] + arr[i];
    }
    cout << get_sum(2, 4) << endl;
    cout << get_sum(0, 3) << endl;
    cout << get_sum(3, 4) << endl;
    return 0;
}
